<?php

include ("./Imagem.php");

//header('Content-Type: text/html; charset=ISO-8859-15');

class DiretorioAux {

    function gerenciarArquivos($pasta, $redirect) {
        if (empty($pasta)) {
            $pasta = $_POST['pasta'];
        }

        $small_largura = 450;
        $small_altura = 300;

        $size = 1024;

        if (isset($_FILES['files'])) {
            foreach ($_FILES['files']['name'] as $i => $name) {
                $tmp_name = $_FILES['files']['tmp_name'][$i];
                if ($tmp_name != '') {
                    $destinoImgBig = '../../' . $pasta . '/' . md5($name) . '.jpg';
                    move_uploaded_file($tmp_name, $destinoImgBig);

                    $oImg = new m2brimagem($destinoImgBig);
                    $oImg->marcaFixa('../../_recursos/imagens/logo-transparente.png', 'meio_centro');
                    $oImg->redimensiona($small_largura, $small_altura, 'crop');
                    $oImg->grava('../../' . $pasta . '/small/' . md5($name) . '.jpg');

                    // Pega os tamanhos originais
                    $infoimg = getimagesize($destinoImgBig);

                    // Cria uma taxa proporcional para conversão
                    $tax = $infoimg[0] / $infoimg[1];
                    if ($tax < 1) {
                        $newWidth = round($size * $tax);
                        $newHeight = $size;
                    } else {
                        $newWidth = $size;
                        $newHeight = round($size / $tax);
                    }

                    $oImgBig = new m2brimagem($destinoImgBig);
                    $oImgBig->redimensiona($newWidth, $newHeight);
                    $oImgBig->marcaFixa('../../_recursos/imagens/logo-transparente.png', 'meio_centro');
                    $oImgBig->grava($destinoImgBig);
                }
            }
        }

        if (isset($_POST['excluir'])) {
            foreach ($_POST['excluir'] as $key => $value) {
                $this->excluirArquivo($pasta, $value);
                $this->excluirArquivo($pasta . '/small', $value);
            }
        }

        if (isset($_POST['destaque'])) {
            foreach ($_POST['destaque'] as $key => $value) {
                if ($value != '0.jpg') {

                    if (file_exists('../../' . $pasta . '/0.jpg')) {
                        rename('../../' . $pasta . '/0.jpg', '../../' . $pasta . '/capa2.jpg');
                        rename('../../' . $pasta . '/small/0.jpg', '../../' . $pasta . '/small/capa2.jpg');
                    }

                    rename('../../' . $pasta . '/' . $value, '../../' . $pasta . '/0.jpg');
                    rename('../../' . $pasta . '/small/' . $value, '../../' . $pasta . '/small/0.jpg');

                    if (file_exists('../../' . $pasta . '/capa2.jpg')) {
                        rename('../../' . $pasta . '/capa2.jpg', '../../' . $pasta . '/' . md5($value) . '.jpg');
                        rename('../../' . $pasta . '/small/capa2.jpg', '../../' . $pasta . '/small/' . md5($value) . '.jpg');
                    }
                }
            }
        }

        if (isset($_POST['redirect'])) {
            $params = '&';
            if (!strpos($_POST['redirect'], '?')) {
                $params = '?';
            }
            header('Location: ../../' . $_POST['redirect'] . $params . '&_=' . md5(date("Y-m-d H:i:s")));
        } else if (!empty($redirect)) {
            $params = '&';
            if (!strpos($redirect, '?')) {
                $params = '?';
            }
            header('Location: ../../' . $redirect . $params . '_=' . md5(date("Y-m-d H:i:s")));
        }
    }

    function excluirArquivo($pasta, $arquivo) {
        if (empty($pasta) || empty($arquivo)) {
            header("HTTP/1.0 400 Parâmetros inválidos inválido");
            return;
        }

        $dir = '../../' . $pasta . '/' . $arquivo;
        unlink($dir);
    }

}

?>
